<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>文章列表</title>
    <link rel="stylesheet" href="./libs/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="css/reset.css">
    <link rel="stylesheet" href="css/iconfont.css">
    <link rel="stylesheet" href="css/main.css">
    <!-- jq -->
    <script src="./libs/jquery-1.12.4.min.js"></script>
    <!-- 模板引擎 -->
    <script src="./libs/template-web.js"></script>
    <!-- 导入日期插件 -->
    <script src="./libs/jedate/js/jedate.js"></script>
    <link rel="stylesheet" href="./libs/jedate/css/jeDate-test.css">
    <link rel="stylesheet" href="./libs/jedate/css/jedate.css">
    <!-- 导入富文本插件 -->
    <script src="./libs/wangEditor/wangEditor.min.js"></script>
    <script src="./libs/https.js"></script>
</head>

<body>
    <div class="container-fluid">
        <div class="common_title">
            文章编辑
        </div>
        <div class="container-fluid common_con">
            <form class="form-horizontal article_form" id="form">
                <div class="form-group">
                    <label for="inputTitle" class="col-sm-2 control-label">文章标题：</label>
                    <div class="col-sm-10">
                        <input type="text" name="title" class="form-control title" id="inputTitle" value="文章标题文字">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputCover" class="col-sm-2 control-label">文章封面：</label>
                    <div class="col-sm-10">
                        <img src="images/pic06.jpg" class="article_cover">
                        <input name="cover" type="file" id="inputCover">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputCategory" class="col-sm-2 control-label">文章类别：</label>
                    <div class="col-sm-4">
                        <select class="form-control category" name="categoryId">
                            <option>类别一</option>
                            <option>类别二</option>
                            <option>类别三</option>
                            <option selected>类别四</option>
                            <option>类别五</option>
                        </select>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-2 control-label">发布时间：</label>
                    <div class="col-sm-4">
                        <!-- 日期控件容器 -->
                        <div class="jeinpbox">
                            <input type="text" class="jeinput" id="testico" placeholder="YYYY-MM-DD" name="date">
                            <div class="icons jebtns" ></div>
                        </div>
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputEmail3" class="col-sm-2 control-label">文章内容：</label>
                    <div class="col-sm-10">
                        <div id="editCom">
                            <p>欢迎使用<b>wangEditor</b>富文本编辑器</p>
                        </div>
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-success btn-release">发布</button>
                        <button type="submit" class="btn btn-default btn-draft">存为草稿</button>
                    </div>
                </div>
            </form>
        </div>
    </div>
</body>

</html>
<script src="./libs/https.js"></script>
<script>
    $(function(){
        // 1.获得文章类别，渲染结构
        $.ajax({
            type:'get',
            url:BigNew.category_list,
            success:function(res){
                if(res.code==200){
                    // 2. 结合数据 渲染结构
                    let htmlStr = '';
                    $.each(res.data,function(index,value){
                        htmlStr += `
                        <option value="${value.id}">${value.name}</option>
                        `
                    })
                    $('.category').empty().html(htmlStr);
                }
            }
        })

        // 3. 封面图片预览
        $('#inputCover').on('change',function(){
            let picData = this.files[0];
            let picUrl = URL.createObjectURL(picData);
            $('.article_cover').attr('src',picUrl);
        })

        // 4. 调用日期插件启动方法
        $('.jebtns').on('click',function(){
            jeDate(
                '#testico',
                {
                    trigger:false,
                    format: 'YYYY-MM-DD',
                    // theme:{bgcolor:'#D91600',pnColor:'#FF6653'}
                    zIndex:100001
                }
            )
        })

        // 5. 调用富文本插件代码
        const E = window.wangEditor;
        const editor = new E('#editCom');
        editor.create();

        // 6. 封装函数：保存文章数据
        function saveData(state){
            // 7. 获得文章数据
            // 利用formData对象来获得数据
            // 注意：控件的name值必须和接口参数一致
            let fd = new FormData(document.querySelector('form'));
            // 手动添加content state
            fd.append('content',editor.txt.html()) //获得富文本容器内容，添加到fd对象中（带标签的数据）
            fd.append('state',state);

            // 8. 发起ajax请求，保存当前数据
            $.ajax({
                type:'post',
                url:BigNew.article_publish,
                data:fd,
                contentType:false,
                processData:false,
                success:function(res){
                    if(res.code == 200){
                        alert('保存文章成功');
                        window.location = './article_list.html';
                        // 调用父页面元素的点击事件
                        parent.$('.level02 li').eq(0).click();//选中效果
                        // 必须用live server插件打开
                    }
                }
            })

            // console.log(fd.get('title'));
            // console.log(fd.get('cover'));
            // console.log(fd.get('categoryId'));
            // console.log(fd.get('date'));
            // console.log(fd.get('content'));
            // console.log(fd.get('state'));
        }

        // 设置发布/草稿按钮的点击事件
        $('.btn-release').on('click',function(e){
            e.preventDefault();
            saveData('已发布');
        });
        $('.btn-draft').on('click',function(e){
            e.preventDefault();
            saveData('草稿');
        });
    })
</script>